package com.pg.agent.engine.client.bo;

import com.alibaba.fastjson.JSONObject;
import com.pg.agent.engine.client.dto.InterfaceParam;
import com.pg.agent.engine.client.model.InParam;
import lombok.Data;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

@Data
public class InterfaceBO implements Serializable {

    private static final long serialVersionUID = 1936056658480287561L;

    /**
     * 接口路径
     */
    private Long interfaceId;

    private String url;
    private String requestMethod;
    private String adapterParam;
    private String name;
    private String code;
    private String description;
    private String urlParam;
    private String outParam;


    /**
     * 入参
     */
    private String inParam;
    /**
     * 请求Header参数
     */
    private String headerParam;
    /**
     * query请求参数
     */
    private String queryParam;

    /**
     * path
     */
    private String pathParam;

    /**
     * body类型
     * 1.application/json, 2.application/x-www-form-urlencoded,
     */
    private Integer bodyType;

    /**
     * 需要入参的url参数
     */
    private Map<String,String> paramMap;

    private List<InterfaceParam> interfaceParamList;

    /**
     * 入参body数据
     */
    private JSONObject param;

    /**
     * 接口入参 包含query path,header body
     */
    private List<InParam> inParamList;

    /**
     * token参数
     */
    private String tokenParam;

    /**
     * 消息时间
     */
    private Integer expiryTime;
}
